Known in the art is an internal combustion engine arranging an NOX selective reducing catalyst in an engine exhaust passage, feeding urea to the NOX selective reducing catalyst to make ammonia generated from this urea be adsorbed at the NOX selective reducing catalyst, and mainly using this adsorbed ammonia to selectively reduce the NOX contained in the exhaust gas (see for example Japanese Patent Publication (A) No. 2005-127256). In this regard, when using the ammonia adsorbed at the NOX selective reducing catalyst to selectively reduce the NOX contained in the exhaust gas, the maximum NOX purification rate can be obtained if making the amount of ammonia adsorbed at the NOX selective reducing catalyst the saturated state.
Therefore, in the above-mentioned internal combustion engine, the practice has been to arrange NOX sensors at the upstream side and the downstream side of the NOX selective reducing catalyst and find the NOX purification rate at the NOX selective reducing catalyst from the detection values of these NOX sensors, calculate the amount of adsorbed ammonia consumed for reducing NOX in the NOX selective reducing catalyst from the NOX purification rate and the amount of NOX exhausted from the engine, calculate the amount of adsorbed ammonia adsorbed at the NOX selective catalyst from the amount of consumption of the adsorbed ammonia and the amount of urea fed, and control the feed of the urea so that this amount of adsorbed ammonia becomes the saturated state.
However, the NOX sensors not only detect the NOX contained in the exhaust gas, but also detect the ammonia contained in the exhaust gas. Accordingly, it is unknown whether the output values of the NOX sensors are showing the amount of NOX contained in the exhaust gas or the amount of ammonia. Accordingly, there is a problem in that the amount of adsorbed ammonia cannot be accurately controlled to the target amount if controlling the amount of feed of urea based on the output value of the NOX sensor.